package rs.util;

/* Classe che contiene i parametri di tuning del sistema. */
public class TuningParameters {
	
	/* Massimo numero di tentativi per una richiesta a Last.fm prima di lanciare un errore */
	public static final int MAX_ATTEMPS = 1;
	
	/* Profondità del grafo delle amicizie:
	 * 0 = utente
	 * 1 = amici
	 * 2 = amici di amici 
	 * ... */
	public static final int SOCIAL_DEPTH = 2;

	/* Numero massimo di amici da recuperare per un utente */
	public static final int MAX_USERS = 10;

	/* Numero massimo di brani preferiti da recuperare per un utente */
	public static final int LOVED_TRACKS_LIMIT = 50;
	
	/* Numero massimo di brani ascoltati recentemente da recuperare per un utente */
	public static final int RECENT_TRACKS_LIMIT = 50;
	
	/* Numero massimo di pagine sui brani recenti da recuperare per un utente */
	public static final int RECENT_MAX_PAGES = 1;

	/* Numero massimo di tag da recuperare per un brano */
	public static final int TAG_TRACK_LIMIT = 10;
	
	/* Numero massimo di tag da estrarre come migliori tag dalla lista pesata di tag */
	public static final int BEST_TAGS_LIMIT = 5;
	
	/* Numero massimo di brani da recuperare per un tag */
	public static final int RECOMMENDED_TRACKS_LIMIT = 20;

	/* Numero massimo di brani bannati da recuperare per un utente */
	public static final int BANNED_TRACKS_LIMIT = 50;
	
	/* Numero massimo di pagine di brani bannati da recuperare per un utente */
	public static final int BANNED_MAX_PAGES = 1;	

	/* Numero massimo di artisti simili, per un brano dell'utente, da recuperare */
	public static final int SIMILAR_ARTIST_LIMIT = 20;

	/* Valore minimo di similarità per considerare un utente molto simile all'utente iniziale */
	public static final double MINIMAL_SIMILARITY_FOR_ARTIST = 0.7;
	
}
